package dlwntk6545.swing.outline;

import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.net.URL;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JPanel;
import javax.swing.JToolBar;
import javax.swing.border.EmptyBorder;


/*
		
		툴바 toolbar
		툴바 작성순서 : toolbar 작성 -> 버튼 생성 -> 툴바에 추가
		응용 프로그램을 사용하는 방법 중 하나 메뉴보다 효과적으로 명령을 시각적으로 표현
		툴바는 이동가능한 독립적인 창안에 속한 컴퍼넌트임
		따라서, 툴바의 위치를 자유롭게 이동가능
		또한, 특정 위치에 도킹할 수도 있음
		
		JToolBar 클래스를 이용해서 툴바를 작성
		컨테이너의 일종으로 버튼 및 콤보박스 등의 다양한 컴퍼넌트를 툴바에 추가할 수 있음
		
		
*/


public class J08_HelloSwingToolbar extends JFrame {

	private JPanel contentPane;

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					J08_HelloSwingToolbar frame = new J08_HelloSwingToolbar();
					frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public J08_HelloSwingToolbar() {
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 450, 300);
		
		JMenuBar menuBar = new JMenuBar();
		setJMenuBar(menuBar);
		
		JMenu mnFilef = new JMenu("File (F)");
		menuBar.add(mnFilef);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		contentPane.setLayout(new BorderLayout(0, 0));
		setContentPane(contentPane);
		
		
		
		
		JToolBar toolBar = new JToolBar();		//툴바생성
		toolBar.setFloatable(false);			//툴바이동방지
	//	toolBar.setFocusable(false);			//클릭시 테두리 제거
		contentPane.add(toolBar, BorderLayout.NORTH);
		
		
		//툴바 클릭시 이벤트 처리를 담당할 클래스 등록
		J07_HelloSwingActionListener a = new J07_HelloSwingActionListener();
		
		
		//툴바에 추가할 버튼 생성
		JButton btnNewButton = new JButton("누르세요");
		btnNewButton.setFocusPainted(false);	//클릭시 테두리 제거
		btnNewButton.addActionListener(a);		//이벤트 처리
		btnNewButton.setActionCommand("new");	//명령 등록
		
		//툴바에 표시할 아이콘 이미지 파일 위치 설정
		URL iconURL = getClass().getResource("/image/new.png");
		btnNewButton.setIcon(new ImageIcon(iconURL, "새로만들기"));
		btnNewButton.setToolTipText("새로만들기");
		toolBar.add(btnNewButton);				//툴바에 추가
		
		JButton btnNewButton_1 = new JButton("빨리요");
		btnNewButton_1.setFocusPainted(false);	//클릭시 테두리 제거
		btnNewButton_1.addActionListener(a);		//이벤트 처리
		btnNewButton_1.setActionCommand("new");	//명령 등록
		
		URL iconURL2 = getClass().getResource("/image/new2.png");
		btnNewButton_1.setIcon(new ImageIcon(iconURL2, "새로만들기"));
		btnNewButton_1.setToolTipText("새로만들기");
		toolBar.add(btnNewButton_1);			//툴바에 추가
		
		JButton btnNewButton_2 = new JButton("눌러주셔서 감사");
		btnNewButton_2.setFocusPainted(false);	//클릭시 테두리 제거
		btnNewButton_2.addActionListener(a);		//이벤트 처리
		btnNewButton_2.setActionCommand("new");	//명령 등록
		
		URL iconURL3 = getClass().getResource("/image/new3.png");
		btnNewButton_2.setIcon(new ImageIcon(iconURL3, "새로만들기"));
		btnNewButton_2.setToolTipText("새로만들기");
		toolBar.add(btnNewButton_2);			//툴바에 추가
		
	}

}
